DJI Thermal SDK API  v1.5
Infrared camera image processing and temperature measurement library API
dirp_wrapper.h
Go to the documentation of this file.
1 /*
2  * DJI Thermal SDK wrapper header
3  *
4  * @Copyright (c) 2020-2023 DJI. All rights reserved.
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining a copy
7  * of this software and associated documentation files (the "Software"), to deal
8  * in the Software without restriction, including without limitation the rights
9  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10  * copies of the Software, and to permit persons to whom the Software is
11  * furnished to do so, subject to the following conditions:
12  *
13  * The above copyright notice and this permission notice shall be included in
14  * all copies or substantial portions of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22  * SOFTWARE.
23  *
24  */
25 
26 #pragma once
27 
28 #ifndef _DIRP_WRAPPER_H_
29 #define _DIRP_WRAPPER_H_
30 
31 #include "dirp_api.h"
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 typedef void *DIRPV_HANDLE;
38 
39 typedef struct
40 {
41  int32_t (*create_from_rjpeg) (const uint8_t *, int32_t, DIRPV_HANDLE *);
42  int32_t (*destroy) (DIRPV_HANDLE);
43  int32_t (*get_rjpeg_version) (DIRPV_HANDLE, dirp_rjpeg_version_t *);
44  int32_t (*get_rjpeg_resolution) (DIRPV_HANDLE, dirp_resolution_t *);
45  int32_t (*get_original_raw) (DIRPV_HANDLE, uint16_t *, int32_t);
46  int32_t (*process) (DIRPV_HANDLE, uint8_t *, int32_t );
47  int32_t (*process_strech) (DIRPV_HANDLE, float *, int32_t);
48  int32_t (*measure) (DIRPV_HANDLE, int16_t *, int32_t);
49  int32_t (*measure_ex) (DIRPV_HANDLE, float *, int32_t);
50  int32_t (*set_isotherm) (DIRPV_HANDLE, const dirp_isotherm_t *);
51  int32_t (*get_isotherm) (DIRPV_HANDLE, dirp_isotherm_t *);
52  int32_t (*set_color_bar) (DIRPV_HANDLE, const dirp_color_bar_t *);
53  int32_t (*get_color_bar) (DIRPV_HANDLE, dirp_color_bar_t *);
54  int32_t (*get_color_bar_adaptive_params) (DIRPV_HANDLE, dirp_color_bar_t *);
55  int32_t (*set_pseudo_color) (DIRPV_HANDLE, dirp_pseudo_color_e);
56  int32_t (*get_pseudo_color) (DIRPV_HANDLE, dirp_pseudo_color_e *);
57  int32_t (*set_enhancement_params) (DIRPV_HANDLE, const dirp_enhancement_params_t *);
58  int32_t (*get_enhancement_params) (DIRPV_HANDLE, dirp_enhancement_params_t *);
59  int32_t (*set_measurement_params) (DIRPV_HANDLE, const dirp_measurement_params_t *);
60  int32_t (*get_measurement_params) (DIRPV_HANDLE, dirp_measurement_params_t *);
61  int32_t (*get_measurement_params_range) (DIRPV_HANDLE, dirp_measurement_params_range_t*);
62  int32_t (*get_pseudo_color_lut) (dirp_isp_pseudo_color_lut_t *);
63  void (*set_verbose_level) (dirp_verbose_level_e);
65 
67 
69 
70 #ifdef __cplusplus
71 }
72 #endif
73 
74 #endif /* _DIRP_WRAPPER_H_ */
dirp_pseudo_color_e
dirp_pseudo_color_e
Palette types.
Definition: dirp_api.h:76
DIRPV_HANDLE
void * DIRPV_HANDLE
Definition: dirp_wrapper.h:37
dirp_verbose_level_e
dirp_verbose_level_e
Definition: dirp_api.h:91
dirp_measurement_params_range_t
Range of temperature measurement parameteres structure definition.
Definition: dirp_api.h:185
dirp_isotherm_t
Isotherm parameters structure definition.
Definition: dirp_api.h:132
dirp_vendor_get_api
dllexport int32_t dirp_vendor_get_api(dirp_api_wrapper_t *api)
dirp_isp_pseudo_color_lut_t
Pseudo color LUT array structure definition.
Definition: dirp_api.h:150
dirp_enhancement_params_t
Image enhancement parameteres structure definition.
Definition: dirp_api.h:159
dirp_rjpeg_version_t
R-JPEG version structure definition.
Definition: dirp_api.h:113
dirp_api_wrapper_t
Definition: dirp_wrapper.h:39
dllexport
#define dllexport
Definition: dirp_api.h:36
func_dirp_vendor_get_api
int32_t(* func_dirp_vendor_get_api)(dirp_api_wrapper_t *)
Definition: dirp_wrapper.h:66
dirp_color_bar_t
Color bar parameters structure definition.
Definition: dirp_api.h:141
dirp_api.h
dirp_resolution_t
The image size structure definition.
Definition: dirp_api.h:124
dirp_measurement_params_t
Customize temperature measurement parameteres structure definition.
Definition: dirp_api.h:167